package com.kingint.web.dueros.model;

import com.alibaba.fastjson.JSONObject;
import com.google.gson.internal.$Gson$Preconditions;
import lombok.Data;

/**
 * @describe 小度客需返回消息
 * @author N_Xiang
 * @time 2020-12-15 上午 10:01
 */
@Data
public class CallBackResponse {
//
//        "errno": 0,
//                "errmsg": "success.",
//                "data":
//
//    {
//        "messageId":12345,
//            "outputSpeechText ": “已为您准备好晚餐”,
//        "cardContent ": “已为您准备好晚餐”
//    }
    /**
     * 返回状态码
     */
    private Integer errno;

    /**
     * 返回消息
     */
    private String errmsg;

    /**
     * 返回详情
     */
    private String data;
//
//    /**
//     * data内容
//     */
//    @Data
//    static class datamsg{
//        /**
//         * 消息ID
//         */
//        private Long messageId;
//
//        /**
//         * 小度语音
//         */
//        private String outputSpeechText;
//
//        /**
//         * 有屏音箱卡片信息
//         */
//        private String cardContent;
//
//    }

    public static CallBackResponse ok(){
        CallBackResponse c = new CallBackResponse();
        c.setErrno(0);
        c.setErrmsg("成功");
//        datamsg d = new datamsg();
//        c.setData(JSONObject.toJSONString(d));
        return c;
    }

    public static CallBackResponse ok(DataMasg dataMasg){
        CallBackResponse c = new CallBackResponse();
        c.setErrno(0);
        c.setErrmsg("成功");
        c.setData(JSONObject.toJSONString(dataMasg));
        return c;
    }



    public static CallBackResponse error(Long messageId){
        CallBackResponse c = new CallBackResponse();
        c.setErrno(0);
        c.setErrmsg("失败");
        DataMasg d =new DataMasg();
        d.setMessageId(messageId);
        d.setOutputSpeechText("呼叫失败，请稍后再试，或联系酒店服务人员");
        d.setCardContent("呼叫失败，请稍后再试，或联系酒店服务人员");
        c.setData(JSONObject.toJSONString(d));
        return c;
    }

    public static CallBackResponse error(DataMasg dataMasg){
        CallBackResponse c = new CallBackResponse();
        c.setErrno(0);
        c.setErrmsg("失败");
        c.setData(JSONObject.toJSONString(dataMasg));
        return c;
    }

//    public CallBackResponse datamsg(Long messageId){
//        datamsg d = new datamsg();
//        d.setMessageId(messageId);
//        return this;
//    }
//
//    public CallBackResponse datamsg(String OutputSpeechText,String CardContent){
//        datamsg d = new datamsg();
//        d.setOutputSpeechText(OutputSpeechText);
//        d.setCardContent(CardContent);
//        return this;
//    }
//
//    public CallBackResponse datamsg(Long messageId,String OutputSpeechText,String CardContent){
//        datamsg d = new datamsg();
//        d.setMessageId(messageId);
//        d.setOutputSpeechText(OutputSpeechText);
//        d.setCardContent(CardContent);
//        return this;
//    }

}
